﻿using System; 
using System.Collections.Generic; 
using System.Text; 
//using Word = Microsoft.Office.Interop.Word; 
using System.Reflection; 
using System.Data;

namespace ExportTest
{
    /// <summary> 
    /// 导出word 
    /// </summary> 
    public class ExportWord
    {
        /// <summary> 
        /// 将数据表导出到word 
        /// </summary> 
        /// <param name="dt">数据表</param> 
        /// <param name="isShowWord">是否显示word</param> 
        /// <param name="fileName">导出到文件名</param> 
        /// <param name="picName">导出到word中图片名</param> 
        /// <returns></returns> 
        //public static bool ExportToWord(DataTable dt, bool isShowWord, object fileName, string picName)
        //{
        //    if (System.IO.File.Exists(fileName.ToString()))
        //    {
        //        System.IO.File.Delete(fileName.ToString());
        //    }
        //    bool result = true;
        //    Object myobj = Missing.Value;
        //    if (dt == null || dt.Rows.Count == 0)
        //    {
        //        result = false;
        //    }
        //    else
        //    {
        //        //建立Word应用 
        //        Word.Application word = new Word.Application();
        //        //word文档 
        //        Word.Document mydoc = new Word.Document();
        //        mydoc = word.Documents.Add(ref myobj, ref myobj, ref myobj, ref myobj);
        //        word.Visible = isShowWord;
        //        mydoc.Select();
        //        Word.Selection mysel = word.Selection;
        //        //mysel.InlineShapes.AddPicture(picName, ref myobj, ref myobj, ref myobj); 
        //        object top = 100;
        //        object left = 300;
        //        object hw = 100;
        //        //将数据生成Word表格文件 
        //        Word.Table mytable = mydoc.Tables.Add(mysel.Range, dt.Rows.Count, dt.Columns.Count, ref myobj, ref myobj);
        //        //设置列宽 
        //        mytable.Columns.SetWidth(50, Word.WdRulerStyle.wdAdjustNone);
        //        //输出列标题数据 
        //        for (int i = 0; i < dt.Columns.Count; i++)
        //        {
        //            mytable.Cell(1, i + 1).Range.InsertAfter(dt.Columns[i].ColumnName);
        //        }
        //        //输出控件中的记录 
        //        for (int i = 0; i < dt.Rows.Count - 1; i++)
        //        {
        //            for (int j = 0; j < dt.Columns.Count; j++)
        //            {
        //                mytable.Cell(i + 2, j + 1).Range.InsertAfter(dt.Rows[i][j].ToString());
        //            }
        //        }
        //    }
        //    return result;
        //}
    }
}